package com.kgc.collection.pojo;


import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

public class WriteOff implements Serializable {

  private int id;
  private String docCode;
  @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
  private Date docDate;
  private int cid;
  private int uid;
  private BigDecimal writeOffAmount;
  private int targetType;
  private int status;
  private String notes;
  private String createBy;
  @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
  private Date createTime;
  private String updateBy;
  @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
  private Date updateTime;
  private int isDelete;
  private int pid;
  private int did;
  private int typeId;
  private int transferInCid;
  private int transferInPid;

  private int checkmanId;
  @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
  private Date checkTime;
  private String checkComment;
  private String checkmanIdStr;


  //连表查询数据
  private String cidStr;
  private String uidStr;
  private String didStr;
  private String pidStr;
  private String targetTypeStr;
  private String transferInCidStr;
  private String transferInPidStr;

  private List<WriteoffDetail> details;


  public WriteOff() {
  }

  public WriteOff(int id, String docCode, Date docDate, int cid, int uid, BigDecimal writeOffAmount, int targetType, int status, String notes, String createBy, Date createTime, String updateBy, Date updateTime, int isDelete, int pid, int did, int typeId, int transferInCid, int transferInPid, int checkmanId, Date checkTime, String checkComment, String checkmanIdStr, String cidStr, String uidStr, String didStr, String pidStr, String targetTypeStr, String transferInCidStr, String transferInPidStr, List<WriteoffDetail> details) {
    this.id = id;
    this.docCode = docCode;
    this.docDate = docDate;
    this.cid = cid;
    this.uid = uid;
    this.writeOffAmount = writeOffAmount;
    this.targetType = targetType;
    this.status = status;
    this.notes = notes;
    this.createBy = createBy;
    this.createTime = createTime;
    this.updateBy = updateBy;
    this.updateTime = updateTime;
    this.isDelete = isDelete;
    this.pid = pid;
    this.did = did;
    this.typeId = typeId;
    this.transferInCid = transferInCid;
    this.transferInPid = transferInPid;
    this.checkmanId = checkmanId;
    this.checkTime = checkTime;
    this.checkComment = checkComment;
    this.checkmanIdStr = checkmanIdStr;
    this.cidStr = cidStr;
    this.uidStr = uidStr;
    this.didStr = didStr;
    this.pidStr = pidStr;
    this.targetTypeStr = targetTypeStr;
    this.transferInCidStr = transferInCidStr;
    this.transferInPidStr = transferInPidStr;
    this.details = details;
  }

  public int getCheckmanId() {
    return checkmanId;
  }

  public void setCheckmanId(int checkmanId) {
    this.checkmanId = checkmanId;
  }

  public Date getCheckTime() {
    return checkTime;
  }

  public void setCheckTime(Date checkTime) {
    this.checkTime = checkTime;
  }

  public String getCheckComment() {
    return checkComment;
  }

  public void setCheckComment(String checkComment) {
    this.checkComment = checkComment;
  }

  public String getCheckmanIdStr() {
    return checkmanIdStr;
  }

  public void setCheckmanIdStr(String checkmanIdStr) {
    this.checkmanIdStr = checkmanIdStr;
  }

  public int getTransferInCid() {
    return transferInCid;
  }

  public void setTransferInCid(int transferInCid) {
    this.transferInCid = transferInCid;
  }

  public int getTransferInPid() {
    return transferInPid;
  }

  public void setTransferInPid(int transferInPid) {
    this.transferInPid = transferInPid;
  }

  public String getTargetTypeStr() {
    return targetTypeStr;
  }

  public void setTargetTypeStr(String targetTypeStr) {
    this.targetTypeStr = targetTypeStr;
  }

  public String getTransferInCidStr() {
    return transferInCidStr;
  }

  public void setTransferInCidStr(String transferInCidStr) {
    this.transferInCidStr = transferInCidStr;
  }

  public String getTransferInPidStr() {
    return transferInPidStr;
  }

  public void setTransferInPidStr(String transferInPidStr) {
    this.transferInPidStr = transferInPidStr;
  }

  public int getId() {
    return id;
  }

  public void setId(int id) {
    this.id = id;
  }

  public String getDocCode() {
    return docCode;
  }

  public void setDocCode(String docCode) {
    this.docCode = docCode;
  }

  public Date getDocDate() {
    return docDate;
  }

  public void setDocDate(Date docDate) {
    this.docDate = docDate;
  }

  public int getCid() {
    return cid;
  }

  public void setCid(int cid) {
    this.cid = cid;
  }

  public int getUid() {
    return uid;
  }

  public void setUid(int uid) {
    this.uid = uid;
  }

  public BigDecimal getWriteOffAmount() {
    return writeOffAmount;
  }

  public void setWriteOffAmount(BigDecimal writeOffAmount) {
    this.writeOffAmount = writeOffAmount;
  }

  public int getTargetType() {
    return targetType;
  }

  public void setTargetType(int targetType) {
    this.targetType = targetType;
  }

  public int getStatus() {
    return status;
  }

  public void setStatus(int status) {
    this.status = status;
  }

  public String getNotes() {
    return notes;
  }

  public void setNotes(String notes) {
    this.notes = notes;
  }

  public String getCreateBy() {
    return createBy;
  }

  public void setCreateBy(String createBy) {
    this.createBy = createBy;
  }

  public Date getCreateTime() {
    return createTime;
  }

  public void setCreateTime(Date createTime) {
    this.createTime = createTime;
  }

  public String getUpdateBy() {
    return updateBy;
  }

  public void setUpdateBy(String updateBy) {
    this.updateBy = updateBy;
  }

  public Date getUpdateTime() {
    return updateTime;
  }

  public void setUpdateTime(Date updateTime) {
    this.updateTime = updateTime;
  }

  public int getIsDelete() {
    return isDelete;
  }

  public void setIsDelete(int isDelete) {
    this.isDelete = isDelete;
  }

  public int getPid() {
    return pid;
  }

  public void setPid(int pid) {
    this.pid = pid;
  }

  public int getDid() {
    return did;
  }

  public void setDid(int did) {
    this.did = did;
  }

  public int getTypeId() {
    return typeId;
  }

  public void setTypeId(int typeId) {
    this.typeId = typeId;
  }

  public String getCidStr() {
    return cidStr;
  }

  public void setCidStr(String cidStr) {
    this.cidStr = cidStr;
  }

  public String getUidStr() {
    return uidStr;
  }

  public void setUidStr(String uidStr) {
    this.uidStr = uidStr;
  }

  public String getDidStr() {
    return didStr;
  }

  public void setDidStr(String didStr) {
    this.didStr = didStr;
  }

  public String getPidStr() {
    return pidStr;
  }

  public void setPidStr(String pidStr) {
    this.pidStr = pidStr;
  }

  public List<WriteoffDetail> getDetails() {
    return details;
  }

  public void setDetails(List<WriteoffDetail> details) {
    this.details = details;
  }

  @Override
  public String toString() {
    return "WriteOff{" +
            "id=" + id +
            ", docCode='" + docCode + '\'' +
            ", docDate=" + docDate +
            ", cid=" + cid +
            ", uid=" + uid +
            ", writeOffAmount=" + writeOffAmount +
            ", targetType=" + targetType +
            ", status=" + status +
            ", notes='" + notes + '\'' +
            ", createBy='" + createBy + '\'' +
            ", createTime=" + createTime +
            ", updateBy='" + updateBy + '\'' +
            ", updateTime=" + updateTime +
            ", isDelete=" + isDelete +
            ", pid=" + pid +
            ", did=" + did +
            ", typeId=" + typeId +
            ", cidStr='" + cidStr + '\'' +
            ", uidStr='" + uidStr + '\'' +
            ", didStr='" + didStr + '\'' +
            ", pidStr='" + pidStr + '\'' +
            ", details=" + details +
            '}';
  }
}


